Quick Start
Get SDK
gitee: https://gitee.com/FourierIntelligence/fourieractuatorsdk
github: https://github.com/FFTAI/fourier_actuator_sdk
Operational Steps
Step 1: Hardware Setup
-
Connect Power and Network
- Connect the 48V DC power supply to the FSA
- Connect the network cable to the FSA
- Observe the FSA indicator light status after powering on
-
Check Indicator Light Status
- ✅ Purple breathing light: Normal status
- ⚠️ Yellow/Red breathing light: Error occurred, need to query error code through host computer
-
Confirm IP Address
- Check if the FSA IP is
192.168.137.101 -
💡 Tip: cpp example uses
192.168.137.101as the default target FSA address
- Check if the FSA IP is
Step 2: Environment Configuration
Linux Environment
# Install build tools
sudo apt install build-essential cmake
# Install Python dependencies
pip install numpy pandas fi_fsa
Windows Environment
# Install Python dependencies
pip install numpy pandas fi_fsa
Step 3: Run Example
C++ - Linux
# Navigate to example directory
cd Linux-x86_64/cpp/example
# Build
cmake -B build -G "Unix Makefiles" && cmake --build build
# Run example
./build/get_pvctte
C++ - Windows
# Navigate to example directory
cd Windows-x86_64\cpp\example
# Build (requires MinGW)
cmake -B build -G "MinGW Makefiles" && cmake --build build
# Run example
.\build\get_pvctte.exe
C++ Example Output
If successful, you should see output similar to the following:
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: -0.0018, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 260 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 314 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 99 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 276 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 231 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 1308 us
FSA(192.168.137.101): pos: 0.5418, vel: -0.0012, cur: 0.0000, tor: 0.0032, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 88 us
FSA(192.168.137.101): pos: 0.5418, vel: -0.0012, cur: 0.0000, tor: 0.0032, tor_e: 0.0000
⚠️ Troubleshooting: If an error code is returned, please refer to the C++ API Documentation to query the corresponding status code and troubleshoot.
Python - Linux
# Navigate to example directory
cd Linux-x86_64/python/v2/example
# Run example
python3 ./demo_fast_get_pvct.py
Python - Windows
# Navigate to example directory
cd Windows-x86_64\python\v2\example
# Run example
python .\demo_fast_get_pvct.py
Python Example Output
If successful, you should see output similar to the following:
[2026.01.19 13:37:27.333.072] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.333.072] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U&\xbc\xa0\xac\xbb\x00\x00\x00\x00:t\xfbX'
Position = 31.041576, Velocity = -0.019614, Current = 0.000000, Torque = 0.000935
[2026.01.19 13:37:27.534.313] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.534.864] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U)<A\x96\xa8\x00\x00\x00\x00:\xa7\xf56'
Position = 31.041582, Velocity = 0.011816, Current = 0.000000, Torque = 0.001281
[2026.01.19 13:37:27.735.719] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.736.739] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8UA=x\x04\x86\x00\x00\x00\x00;\x7ff\xdc'
Position = 31.041628, Velocity = 0.060551, Current = 0.000000, Torque = 0.003897
[2026.01.19 13:37:27.936.982] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.937.490] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8UO<\xf7\xba\xe6\x00\x00\x00\x00\xbb\xc1\x8c\x80'
Position = 31.041655, Velocity = 0.030240, Current = 0.000000, Torque = -0.005907
[2026.01.19 13:37:28.138.463] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:28.138.967] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U\x1a=r\x1d\xd2\x00\x00\x00\x00;\x91^\xcd'
Position = 31.041553, Velocity = 0.059110, Current = 0.000000, Torque = 0.004436
Step 4: Make FSA Rotate
⚠️ Safety Warning:
- Secure the FSA before making it rotate
- Ensure the DC power supply current limit threshold is set appropriately (no-load current can be limited within 2A)
- If the FSA response is slow, you may need to adjust PID/PD parameters
Position Control Example - C++ (Linux)
# Navigate to example directory
cd Linux-x86_64/cpp/example
# Run example
./build/position_control
Position Control Example - C++ (Windows)
# Navigate to example directory
cd Windows-x86_64\cpp\example
# Run example
.\build\position_control.exe
Position Control Example - Python (Linux)
# Navigate to example directory
cd Linux-x86_64/python/v2/example
# Run example
python3 ./demo_fast_control_position_mode.py
Position Control Example - Python (Windows)
# Navigate to example directory
cd Windows-x86_64\python\v2\example
# Run example
python .\demo_fast_control_position_mode.py
📚 Related Documentation
For more detailed documentation, please refer to:
-
📖 Actuator Introduction - Learn about FSA actuator basic concepts and control modes
-
🔧 C++ API Documentation - C++ interface function descriptions and examples
-
🐍 Python API Documentation - Python interface function descriptions and examples
💡 Tips
-
If you encounter issues, first check hardware connections and IP address configuration
-
For error code queries, please refer to the corresponding API documentation
-
It is recommended to secure the FSA before performing motion control tests